package de.riceman.simpleGo.players;

import de.riceman.simpleGo.main.Configuration;

/**
 * This class represents the framework for an automatical move generator, or so-called
 * "artificial intelligence".
 * 
 * @author Riceman
 */
abstract class AI extends Player {
	
	/**
	 * @param name
	 * @param player
	 * @param configuration
	 */
	public AI(String name, boolean player, Configuration configuration) {

		super(name, player, configuration);
	}
	
	/**
	 * @see Player#generateMove()
	 */
	public abstract void generateMove();
	
	/**
	 * This function values the current configuration (setting of the stones)
	 * of the specified player.
	 * The return value is variable.
	 * 
	 * @return the configuration's value
	 */
	public abstract int getConfigurationValue ();
	
}